Протокол KWP2000 для диагностических приложений автоматизации

Поделиться ссылкой:

Протокол KWP2000 стал стандартом де-факто в автомобильных диагностических приложениях. Он стандартизован как ISO 14230-3. KWP2000 описывает реализацию различных диагностических служб, которые вы можете выполнять через протокол. Вы можете запустить KWP2000 на нескольких транспортных уровнях, таких как K-Line (Serial) или CAN.

Транспортный протокол

Поскольку KWP2000 использует сообщения с переменной длиной байта, протокол передачи требуется в слоях с очень короткой длиной сообщения, такой как CAN. Протокол трафика делит длинное сообщение KWP2000 на части, которые могут быть перенесены по сети и перестроить эти компоненты для восстановления исходного сообщения.

KWP2000 работает на CAN по различным транспортным протоколам, таким как ISO TP (ISO 15765-2), TP 1.6, TP2.0 (Volkswagen) и SAE J1939-21. Для KWP2000 автомобильный диагностический комплект поддерживается только стандартами ISO TP 15775-2 и VW TP 2.0

Diagnostic Services

Диагностические службы, доступные в KWP2000, сгруппированы в функциональные блоки и идентифицированы однобайтовым кодом (ServiceId). Стандарт не определяет все коды; для некоторых кодов стандарт относится к другим стандартам SAE или ISO, а некоторые зарезервированы для расширений, специфичных для производителя. Диагностический диагностический комплект для автомобилей поддерживает следующие услуги:

• Диагностический контроль

• Передача данных

• Сохраненные данные передачи (коды диагностики неисправностей)

• Управление вводом / выводом

Запись / загрузка и расширенные услуги не являются частью диагностического диагностического набора для автомобилей

Диагностический формат

Диагностические службы имеют общий формат сообщений. Каждая служба определяет сообщение запроса, сообщение с положительным ответом и сообщение с отрицательным ответом. Отчет запроса включает ServiceId в качестве первого байта плюс другие параметры, относящиеся к услугам. Сообщение положительного ответа имеет эхо-сигнал ServiceId с битом 6, установленным в качестве первого байта, и параметрами ответа, определенными службой.

Сообщение об отрицательном ответе обычно представляет собой трехбайтовое сообщение: Negative Response ServiceId — это первый байт, эхо исходного ServiceId в качестве второго байта и ResponseCode в качестве третьего байта. Единственным исключением из этого формата является отрицательный ответ на EscapeCode; здесь третий байт является эхом пользовательского кода службы, а четвертым байтом является ResponseCode. Стандарт KWP2000 частично определяет ResponseCodes, но есть место для расширений, специфичных для производителя. Для некоторых ResponseCodes KWP2000 определяет процедуру обработки ошибок. Поскольку как положительные, так и отрицательные ответы имеют эхо требуемого сервиса, вы всегда можете назначать ответы на их соответствующий запрос.

Подключить / отключить

KWP2000 ожидает запустить диагностический сеанс с помощью StartDiagnosticSession и выйти с StopDiagnosticSession. Однако в StartDiagnosticSession есть параметр DiagnosticMode, который указывает тип сеанса диагностики. В зависимости от этого типа ECU он может поддерживать или не поддерживать другие диагностические службы или работать в ограниченном режиме, когда все функции ECU недоступны. Значения параметров DiagnosticMode являются заводскими и не определены в стандарте. Если вы хотите, чтобы сеанс диагностики был активным, TesterPresent должен регулярно выполнять службу, если другая служба не выполняется. Если служба TesterPresent отсутствует в течение некоторого времени, диагностика завершается, и ECU возвращается в нормальный рабочий режим.

GetSeed / Unlock

Механизм GetSeed / Unlock может защитить некоторые диагностические службы. Однако соответствующие услуги предоставляются изготовителю и не определяются стандартом. Вы можете получить механизм GetSeed / Unlock через SecurityAccess. Он определяет несколько уровней безопасности, но производитель назначает эти уровни определенным службам.

Чтение / запись памяти

Используйте службу Read / WriteMemoryByAddress для загрузки / загрузки данных на определенные адреса памяти в ECU. Адрес представляет собой трехбайтовое количество в KWP2000 и число пяти байтов (четырехбайтное и однобайтное расширение) в протоколах калибровки. Функциональные блоки Upload / Download очень четко определены в стандартах и ​​не точно определены в стандартах, поэтому они не являются хорошим способом обеспечения общего механизма загрузки / загрузки.

Измерение

Используя службу ReadDataByLocal / CommonIdentifier, вы можете получить доступ к данным ECU таким же образом, как и список DAQ. Local / CommonIdentifier описывает список количества ECU, которые затем преобразуются из ECU в тестер. Передача может быть как одноразовой, так и обычной, медленной, средней или быстрой. Скорость передачи зависит от производителя. вы можете установить службу SetDataRates, но этот параметр зависит от фабрики. Набор автоматизированных диагностических команд поддерживает измерение в одной точке.

Диагностические коды ошибок

Диагностические коды ошибок (DTC) являются основной диагностической функцией. KWP2000 определяет несколько служб, которые могут обращаться к кодам DTC по их группе или состоянию

Управление вводом / выводом

KWP2000 определяет службы для редактирования внутренних или внешних сигналов ECU. Одним из примеров является перенаправление входов ECU на сигналы стимуляции. Параметры управления этими командами являются специфичными для продукта и не определены в стандарте.

Дистанционные процедуры активации

Эти службы аналогичны службам CCS ActionService и DiagService. Вы можете вызвать внутреннюю процедуру ECU, идентифицированную локальным / CommonIdentifier или адресом памяти. В отличие от случая CCP, эта процедура может быть асинхронной; что существуют отдельные службы Start, Stop и RequestResult. Параметры управления этими командами зависят от производителя и не определены в стандарте.

Внешние ссылки

Для получения дополнительной информации о стандарте KWP2000 см. ISO 14230-3

——————————————————————-

Мотозапчасти оптом
Велозапчасти оптом
Запчасти для скутеров оптом
Запчасти для снегоходов оптом
Запчасти для бензопил оптом

Мы не придумываем новости, мы их копируем! Верить или нет тому, что вы прочитали на нашем сайте, личное дело каждого!

Похожие записи

Top